# -*- coding: utf-8 -*-
import oss2

# 将本地文件上传到oss
def update_file_to_oss(endpoint, askeyid, askeyst, bucket_name, local_file_path, target_file_path, target_name):
    # endpoint:oss的地址
    # bucket_name:bucket名称
    # local_file_path:本地上传文件的路径
    # target_file_path:oss的文件夹路径
    # target_name:oss的文件名
    # if_uuid:是否使用uuid，如果用的话则在文件名后加入uuid唯一标识符

    # 填写Object完整路径，例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。
    object_name = target_file_path + '/' + target_name

    # 使用AccessKey ID和AccessKey Secret初始化Auth对象。
    auth = oss2.Auth(askeyid, askeyst)

    # 创建Bucket对象。
    bucket = oss2.Bucket(auth, endpoint, bucket_name)

    # 上传文件。
    print("开始上传文件")
    with open(local_file_path, 'rb') as fileobj:
        bucket.put_object(object_name, fileobj)

    print(f"文件 {local_file_path} 已成功上传到OSS路径 {object_name}")